#    Tichy
#
#    copyright 2008 Guillaume Chereau (charlie137@gmail.com)
#
#    This file is part of Tichy.
#
#    Tichy is free software: you can redistribute it and/or modify it
#    under the terms of the GNU General Public License as published by
#    the Free Software Foundation, either version 3 of the License, or
#    (at your option) any later version.
#
#    Tichy is distributed in the hope that it will be useful, but
#    WITHOUT ANY WARRANTY; without even the implied warranty of
#    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
#    General Public License for more details.
#
#    You should have received a copy of the GNU General Public License
#    along with Tichy.  If not, see <http://www.gnu.org/licenses/>.

from service import Service


class TextEditService(Service):

    def edit(self, parent, text="", name=None, input_method=None):
        raise NotImplementedError


class DesignService(Service):
    pass
    # XXX: add interface


class WindowsManagerService(Service):

    def get_app_parent(self):
        raise NotImplementedError


class ScreenLockService(Service):

    def run(self, window):
        raise NotImplementedError


class KeyboardService(Service):

    def get_keyboard(self):
        raise NotImplementedError


class FileBrowserService(Service):

    def get_save_path(self, parent, name):
        raise NotImplementedError

    def get_load_path(self, parent):
        raise NotImplementedError


class SoundSettingService(Service):

    def start(self, window):
        raise NotImplementedError


class SpeakService(Service):

    def speak(self, text, lang='en', speed=120, voice='m1'):
        raise NotImplementedError
